package com.haynes.social.controller;

import cn.hutool.core.util.RandomUtil;
import cn.hutool.core.util.StrUtil;
import com.haynes.social.common.Result;
import com.haynes.social.entity.User;
import com.haynes.social.util.RedisKey;
import lombok.extern.slf4j.Slf4j;
import org.springframework.data.redis.core.RedisTemplate;
import org.springframework.web.bind.annotation.*;

import javax.annotation.Resource;
import java.util.Objects;
import java.util.concurrent.TimeUnit;

import static com.haynes.social.util.RedisKey.LOGIN_CODE_TTL;
import static com.haynes.social.util.RedisKey.USER_LOGIN_CODE_KEY;

/**
 * @Author Haynes
 * @Date 2023/5/26 21:33
 * @PackageName:com.haynes.social.controller
 * @ClassName: CommonController
 */
@RestController
@Slf4j
@RequestMapping("/common")
public class CommonController {
    @Resource
    private RedisTemplate redisTemplate;

    @GetMapping("/sendVerificationCode/{phone}")
    public Result<String> sendVerificationCode(@PathVariable("phone") String phone){
//        生成验证码
        String code = RandomUtil.randomNumbers(6);
//        生成Redis中的Key
        String key=USER_LOGIN_CODE_KEY+phone;
        log.info("手机号验证码为："+code);

//        将验证码保存在redis中，五分钟有效期。
        redisTemplate.opsForValue().set(key,code, LOGIN_CODE_TTL, TimeUnit.MINUTES);
        return Result.success();
    }
}
